C语言中如何使用printf输出string类型字符串 | 您所在的位置:网站首页 › string 70092703c › C语言中如何使用printf输出string类型字符串 |
知识点:
1.printf函数输出字符串是针对char *的,即printf只能输出c语言的内置数据类型,而string不是c语言的内置数据类型。 2.string类型的对象不止包含字符串,还包含了许多用于操作的函数,所以&str并非字符串的首地址。 3.如需输出string对象中的字符串,可以使用string的成员函数c_str(),该函数返回字符串的首字符的地址。 错误示例: #include #include int main(){ string str="hello"; printf("%s",str); return 0; }编译报错: [Error] cannot pass objects of non-trivially-copyable type 'std::string {aka class std::basic_string}' through '...' 正确示例: #include #include int main(){ string str="hello"; printf("%s",str.c_str()); // 调用c_str()函数 return 0; }运行结果:
参考自:https://blog.csdn.net/cjolj/article/details/55267660 |
CopyRight 2018-2019 实验室设备网 版权所有 |